Memory cards are known in the art. For example, a flash-based card is a small, encapsulated card containing a large amount of non-volatile memory, which can be removably inserted into a portable electronic device. Such memory cards are commonly used in personal computers, notebook computers, personal digital assistants, mobile phones, and cameras where a data storage device can be removed and replaced by another. In particular, a MultiMediaCard is small in size but currently can store up to 128 MB of data. A MultiMediaCard package has a seven pad serial interface and is easily integrated into various host devices. A host device generally provides only one slot for insertion of one MultiMediaCard. That is because only one card/ host can talk at a time. The host has a data processor such as an ASIC (Application Specific Integrated Circuit) or a chip set operatively connected to the card slot. As disclosed in Cedar et al. (WO 02/15020), as part of a system initialization routine, a unique address is assigned to each memory card inserted. A unique card identification (CID) number is stored in a register of each card during manufacturing. In order for the host processor to initially be able to address each card and, in turn, to assign such addresses, the host commands all cards to simultaneously transmit their CIDs. Thereafter, a unique, small address is assigned to each of the cards inserted.
There are two main ways to affect data rate between memory and main processor. One is bus frequency and the other is bus width. The data rate can also be affected by different clocking methods such as single edge and dual edge data clocking using upward/downward going edges. With today's known technology, the bus width is obtained by checking a value from the internal register located in the memory card.
It is advantageous and desirable to eliminate the internal register in the memory card and the register checking procedure for determining the width of the memory bus.